Genesis 3D

 

per collaborazioni, commenti, critiche, e altro contattateci alla e-mail: clubinfo@libero.it risponderemo al più presto!

Corso sull'engine 3D di Genesis

Prima lezione

di Luca Sabatucci

Per commentare, dare suggerimenti o consigli (molto apprezzati) e per segnalare eventuali errori o
disattenzioni (sempre possibili), puoi inviare una email all'autore (clicca sul nome sopra). Grazie per la collaborazione!

 


Introduzione a genesis

Prima di iniziare vediamo cosa è Genesis e quali sono gli strumenti che mette e disposizione.

Genesis

Genesis è un SDK (software develpment kit) scritto in C che rende possibile la costruzione di applicazioni 3D ad alte performances. Incluse nel kit ci sono gli strumenti utili per definire gli oggetti da includere nelle proprie applicazioni, come l'ambiente, gli attori; mediante le librerie  invece si gestiscono elementi ad alto livello quali telecamere, luci, attori statici e dinamici.

Genesis è un progetto Open Source, e il codice sorgente delle librerie, nonché dei tool viene distribuito insieme agli eseguibili.

 

L'engine è stato progettato principalmente per scene di interni, con un numero limitato di poligoni, ma può essere usato per costruire degli "esterni" ragionevolmente estesi e dettagliati. L'engine ha il supporto per una gestione veloce delle collisioni e un test di visibilità e di illuminazione precalcolato.

 

Ecco le caratteristiche dell'engine, così come enunciate nel sito di genesis:

·   Exceptionally fast rendering

·   Radiosity lighting

·   Integrated rigid body physics simulation support for world objects

·   Pre-computed lighting for animating light intensities and simulating caustics

·   Environment uses BSP trees for fast visibility culling

·   Dynamic RGB lights

·   Dynamic shadows

·   Dynamic fog

·   Dynamic mirrors

·   Dynamic water effects

·   Dynamic texturing effects such as procedurals, animations, blending, and morphing

·   Area portals allow selective rendering of world geometry

·   Translucent world geometry for windows, or other effects

·   Spherically mapped sky for seamless sky and horizon

·   3D sound positioning and attenuation

·   User extendable special effects and particle systems

·   Bitmap and Windows font support for labeling the screen, textures, or bitmaps

 

Le librerie Genesis possono essere utilizzate per scopi didattici: studiare il vasto campo della grafica 3d, la modellazione di un ambiente, le strutture gerarchiche e l'animazione scheletrica.

Le API di Genesis

Tali librerie sono fornite sia come file pre-compilati (.lib) + librerie .dll che come sorgenti sono scritte in C e possono essere facilmente compilate in Visual C++ 6.0

Le librerie si collocano su un piano più elevato rispetto alle OpenGL o alle DirectX, in quanto ad esempio forniscono comandi ad alto livello per il caricamento di un ambiente (precedentemente creato mediante un editor) o il caricamento/posizionamento degli actor, e per la gestione dell'animazione.

 

Tali API sono state progettate per sfruttare la maggior parte dell'hardware dedicato al 3D, sebbene questo è stato ottenuto sacrificando leggermente le performance. E' stato infatti previsto il supporto di due categorie di driver (Direct 3d e Glide) più un driver generico per le macchine che non possiedono nessun hardware specializzato.

Gli strumenti

World Edit

Presente in più versioni, tale editor permette di costruire l'ambiente il cui si svolgeranno le animazioni. Permette di aggiungere stanze, mura, luci, entità di varia natura. Permette anche di utilizzare la geometria booleana per creare aperture (porte, finestre ecc...)

Dopo aver costruito l'ambiente sempre con lo stesso strumento si può aggiungere le texture per rendere i vari elementi più reali.

Inoltre il livello può essere compilato e testato senza uscire dall'applicazione.

Actor Studio

Questo strumento compila un oggetto 3D creato mediante uno dei possibili tool di modellazione. Il risultato è un file .act che contiene sia la descrizione della geometria del modello, sia le possibili animazioni del modello stesso.

Actor Builder

Si tratta della versione a riga di comando dell'actor studio

Actor Viewer

Semplice visualizzatore di file .act e di testare tutte le possibili animazioni

Texture Packer

Affinchè le texture possano essere utilizzate nel World editor è necessario che vengano predisposte nel formato corretto. Questo tool, semplicissimo da usare fa proprio questo.

3DS Max exporter

La Genesis non fornisce alcun strumento per la modellazione dei propri actor. Ragion per cui è necessario utilizzare uno strumento esterno al pacchetto. Uno degli strumenti più potenti attualmente sul mercato è 3D Studio MAX. La genesis ha creato dei plugin per esportare gli oggetti modellati secondo alcune regole base con il 3DS, ma è richiesta la presenza del Caracter Studio 2.0

Per chi come me non possedesse tale strumento è possibile procedere in altre maniere, illustrate in questo documento.

 

Questo articolo è stato scaricato dal Club di informatica
Pagina curata da:
Luca Sabatucci